1. Field of the Invention
The present invention relates to a key-code outputting apparatus of a data processor equipped with a keyboard. More particularly, the present invention relates to a key-code outputting apparatus of a data processor equipped with a keyboard, which can provide a correct key-code, required by a data processor, to a data processing program even when a key arrangement of the keyboard connected to the data processor is different from the key arrangement of the keyboard assumed by the data processing program of the data processor.
2. Description of the Related Art
Keyboards have been used generally as an input devices of data processors. However, the key arrangement of the keyboards has not yet been unified completely, and various keyboards having different key arrangements have been put on the market. For example, keyboards having an ISO (International Organization for Standardization) arrangement and keyboards having an ANSI arrangement have spread in U.S.A. Nonetheless, the keyboards of the ANSI (American National Institute, Inc.) arrangement have been more popular than the keyboards of the ISO arrangement in U.S.A.
FIG. 1A shows the broad construction of the data processor 1 to which a keyboard 4A of the ANSI arrangement is connected. The keyboard 4A of the ANSI arrangement is connected to the data processor by a connector 1C. The data processor 1 includes a keyboard driver 6. Data inputted from the keyboard 4A is transmitted to an application program (data processing program) 20 through this keyboard driver 6. A display device 5 is connected to the data processor 1, and display data from the application program 20 is stored in a screen code buffer 21 as a display memory and is then outputted to the display device 5.
A keyboard is provided in most cases as a fitting to a data processor such as a personal computer at the time of shipment. In such cases, no problem occurs because the key arrangement of the keyboard is coincident with the key arrangement assumed by a data processing program of the data processor. On the other hand, there is the case where the key arrangement of a keyboard added to the data processor is different from the key arrangement of the keyboard the user usually uses. In such a case, the user removes the keyboard provided with the data processor from it and after connecting the keyboard having the key arrangement familiar to him, the user inputs data to the data processor. Then, quite naturally, the key arrangement assumed by the data processing program is different from the key arrangement of the keyboard, and the data processing program of the data processor receives meaningless input data and cannot execute data processing.
Accordingly, for example, a key-code conversion apparatus for converting the key-code generated by the keyboard of the ISO arrangement to the key-code of the ANSI arrangement has been provided so that the data processing program generated on the assumption of the keyboard of the ANSI arrangement can be operated by the keyboard of the ISO arrangement, too.
FIG. 1B shows a data processor having a keyboard interchanging function according to the prior art, and like reference numerals are used to identify the same constituent members as those of the data processor explained with reference to FIG. 1A. The keyboard 4A of the ANSI arrangement and the keyboard 4I of the ISO arrangement can be interchanged by the connector 1C. A keyboard driver 6I for the ISO arrangement and the keyboard driver 6A for the ANSI arrangement are disposed in parallel inside the data processor 1, and one of them can be selected by a switch 7.
Note that the switch 7, the keyboard driver 6I for the ISO arrangement and the keyboard driver 6A for the ANSI arrangement correspond to the key-code conversion apparatus.
Although a large number of key arrangements other than the ISO arrangement and the ANSI arrangement of the keyboards that can be used in U.S.A. exist, a key-code conversion apparatus for handling the key arrangements other than the ANSI arrangement and the ISO arrangement have not been available as as key-code conversion apparatus for the data processor equipped with a conventional keyboard.
By the way, it is necessary for the key-code conversion apparatus for converting the difference of the key arrangements on the keyboard to correctly grasp a character input mode used by the data processing program of the data processor and to execute the key-code conversion processing. The character input mode represents the mode for inputting the data of the keyboard by characters other than the alphabet. In Japan, for example, a kana character input mode such as hiragana and katakana other than the alphabet exists, and the kana character is displayed in the mixed state with the alphabet on the key top of each key of the keyboard by means such as printing.
The Japanese writing system utilizes four different kinds of symbols: (1) kanji, (2) katakana, (3) hiragana, and (4) romaji. Kanji is a set of ideographs principally borrowed from classic Chinese characters. Both katakana and hiragana are Japanese original syllabaries invented in the eighth or ninth century based on Chinese characters. They differ in orthographical form, but have a syllabary of 48 letters each as shown in FIGS. 19A and 19B. Hiragana corresponds to an alphabet in Japanese language. Katakana also corresponds to an alphabet in Japanese language and is especially used for a word of foreign origin. Romaji is an alphabet of 28 Roman letters and the same phonetic sound of katakana and hiragana can be realized by the combination of 28 Roman letters as shown in FIG. 19C. Since the number of kanji is several thousand, Japanese language is input to a computer or a Japanese word processor by using a hiragana-assigned keyboard and hiragana displayed on the screen of the computer or the Japanese word processor is converted to kanji or katakana by touching a conversion key on the keyboard. Katakana may be directly displayed on the screen of the computer or the Japanese word processor by using the hiragana-assigned keyboard if the input mode is katakana-input-mode.
For example, in the JIS (Japanese Industrial Standards) arrangement keyboard conforming to the ISO arrangement in Japan, the alphabet "A" and a hiragana character shown by the alphabet T (pronunciation is "chi") are assigned to a certain key (key top) 8J as shown in FIG. 1C. When the key 8J having "A" and the character shown by the alphabet T assigned thereto is touched, the JIS arrangement keyboard generates a key-code "41", for example, irrespective of the kana input mode/alphabet input mode, and this key-code "41" is inputted to the data processor. When the data input device receives this key-code "41", the data processing program recognizes the key-code as the character shown by the alphabet T in the kana input mode and recognizes it as "A" in the alphabet input mode.
A keyboard equipped with a thumb shift key and referred to as a "thumb shift arrangement keyboard" is also available in Japan. As shown in FIG. 1D, three kinds of characters, that is, the alphabet "A" and two hiragana characters shown by the alphabet W (pronunciation is "WO") and the alphabet U (pronunciation is "U"), are assigned to a certain key 8S of the thumb shift arrangement keyboard. In this thumb shift arrangement keyboard, when this key alone is touched in the kana input mode, a key-code corresponding to the hiragana character shown by the alphabet U is outputted and when this key is simultaneously touched with the thumb shift key in the kana input mode, a key-code corresponding to the hiragana character shown by the alphabet W is outputted. When this key is individually touched in the alphabet input mode, a key-code corresponding to the alphabet "A" is outputted.
As described above, the data processing program recognizes the character input mode and executes recognition processing of the key-code generated by the keyboard. Therefore, when the key-code outputting apparatus is constituted, a construction must be employed such that the key-code outputting apparatus can correctly grasp the character input mode recognized by the data processing program.
Set processing of the character input mode is generally carried out by the push-down operation of the alphabet/kana key disposed on the keyboard. When the key-code outputting apparatus is constituted, therefore, it may be possible to employ a construction which monitors the character input mode recognized by the data processing program by monitoring the key operation of the alphabet/kana character key.
When such a construction is employed, however, there is the case where the character input mode recognized by the key-code outputting apparatus is not transmitted to the data processing program due to bit fall-off, etc. In such a case, the character input mode recognized by the key-code outputting apparatus becomes different from the character input mode recognized by the data processing program. Further, when the kind of characters to be printed is determined in advance in accordance with the positions on a slip to be printed such as when characters and figures are printed on a slip having frames printed thereon before-hand, there is the case where the data processing program changes arbitrarily the character input mode when the printing position changes.
FIG. 1E shows the screen display of the display device 5 when an address book is inputted by the data processor. When the address book is inputted, the character input mode automatically changes to the alphabet input mode in the fields F1 and F4 for inputting the postal code and the telephone number even when the operator does not change the character input mode, and the character input mode automatically changes similarly to the kana input mode in the fields F2 and F4 for inputting the address and the name.
As described above, when the character input mode recognized by the operator becomes different from the character input mode recognized by the data processing program of the data processor, the key-code outputting apparatus wrongly grasps the character input mode used by the data processing program, so that the data processing program cannot receive the correct key-code.
For example, even though the character input mode changes from the kana input mode to the alphabet input mode and yet the operator still recognizes the character input mode as the kana input mode, the kana characters the operator desires to input are not recognized by the data processing program, and the alphabet assigned to the key touched by the operator is inputted.